const { defineConfig } = require('@vue/cli-service')

// 引入自动导入插件
const AutoImport = require('unplugin-auto-import/webpack')
const Components = require('unplugin-vue-components/webpack')
// Element Plus 解析器（用于自动导入组件和API）
const { ElementPlusResolver } = require('unplugin-vue-components/resolvers')

module.exports = defineConfig({
  transpileDependencies: true,
  lintOnSave: false,

  // 配置Webpack插件（关键步骤：注册插件）
  configureWebpack: {
    plugins: [
      // 自动导入Vue API和Element Plus的API（如ElMessage）
      AutoImport({
        imports: ['vue'], // 自动导入Vue的ref、reactive等
        resolvers: [ElementPlusResolver()], // 自动导入Element Plus的API
        dts: 'src/auto-imports.d.ts' // 生成类型声明文件（可选但推荐）
      }),
      // 自动导入组件（如Vue本地组件和Element Plus组件）
      Components({
        resolvers: [ElementPlusResolver()], // 自动导入Element Plus组件
        dts: 'src/components.d.ts' // 生成组件类型声明文件（可选但推荐）
      })
    ]
  }
})